项目签名

HMI 设备可配置为只接受签名的项目。签名确保只有授权用户可以更新 JMobile HMI Runtime 应用程序。

要配置 HMI 设备只接受签名的项目,必须有 x.509 凭证才可签署项目。

x.509 凭证包括两部分:

  1. certificate.pfx
    包含签署项目所需主密钥的文件,必须安装在 PC 上,从 JMobile Studio 使用来签署要在 HMI 设备上下载的项目(主密钥是保留的文件,因为其所有者可能在面板上修改项目)

  2. certificate.crt
    包含公钥的文件,必须加载到 HMI 设备才可让设备检查是否对项目正确签名(此文件将保存在 HMI 设备的受保护区域,因为一旦更换,将会失去保护)

我们使用安全哈希算法 (SHA256)

如何在 PC 上安装凭证

要在 PC 上安装凭证,双击 certificate.pfx 文件以激活 Windows 安装向导。将会提示您输入与凭证相关的密码和指定安装位置(例如,可安装在“个人”文件夹中)

如何在 HMI 设备上安装凭证

在 HMI 设备上,certificate.crt 可从 HMI 设备“系统设置”的“安全性”区域安装(请参阅"安全")。

在“安全性”区域中,选择:

如何在 JMobile PC Runtime 上安装凭证

您可以从上下文菜单中选择要使用的凭证(请参阅:"背景菜单选项"

请注意,要使用的凭证必须安装在 PC 上(您可以双击凭证文件进行安装)

如何配置 JMobile Studio 在下载之前签署项目

在安装两个与凭证相关的文件后,可通过将“项目属性”中的“签署项目”属性设置为 true 来签署将要下载到面板的应用程序(请参阅"项目")。当您要在 HMI 设备上下载项目时,将会提示您使用必须与 HMI 设备上安装的凭证对应的凭证。

用于生成证书的脚本

以下示例说明如何使用公共 OpenSSL-Win32 库生成证书(参考:https://www.openssl.org/)

文件:CreateCertificates.cmd

@echo off set OpenSSL="C:\Program Files (x86)\OpenSSL-Win32\bin\openssl.exe" set CertificateName=MyCertificate rem Generate an RSA key %OpenSSL% genrsa -out certificate.key 4096 rem Creating Certificate Signing Requests %OpenSSL% req -new -sha256 -key certificate.key -out certificate.csr -subj "/ST=NY/C=US/L=New York/O=CompanyName/OU=R&D Team/CN=%CertificateName%" rem Self Sign the Certificate Signing Requests %OpenSSL% x509 -req -days 365 -in certificate.csr -signkey certificate.key -out certificate.crt rem Convert to .pfx file %OpenSSL% pkcs12 -export -out certificate.pfx -inkey certificate.key -in certificate.crt -CSP "Microsoft Enhanced RSA and AES Cryptographic Provider" pause

此程序将要求创建密码,访问凭证的主密钥时将需要此密码。